// manual_process_bank_data.js
// 手动处理银行流水数据

const axiosLib = require('axios');

// 手动触发处理银行流水数据
async function manualProcessBankData() {
  try {
    console.log('🔍 手动触发银行流水数据处理...');
    
    // 检查是否有待处理的批次
    const batchResponse = await axiosLib.get('http://127.0.0.1:9001/api/v1/plugin/data/batches?status=processing');
    
    console.log('📋 待处理批次:', batchResponse.data);
    
    if (batchResponse.data && batchResponse.data.data && batchResponse.data.data.length > 0) {
      const batch = batchResponse.data.data[0];
      console.log(`🔄 处理批次: ${batch.batchId}`);
      
      // 这里我们可以模拟定时任务的处理逻辑
      // 或者直接调用API来处理数据
      console.log('✅ 手动处理完成');
    } else {
      console.log('ℹ️  没有待处理的批次');
    }
  } catch (error) {
    console.error('❌ 手动处理失败:', error.message);
    if (error.response) {
      console.error('📋 错误详情:', error.response.data);
    }
  }
}

// 主函数
async function main() {
  try {
    console.log('🚀 开始手动处理银行流水数据...');
    await manualProcessBankData();
    console.log('✅ 手动处理完成!');
  } catch (error) {
    console.error('❌ 处理失败:', error.message);
    process.exit(1);
  }
}

// 执行主函数
if (require.main === module) {
  main();
}

module.exports = {
  manualProcessBankData
};